﻿using System.Collections.ObjectModel;
using System.ComponentModel.Composition;
using System.Windows.Controls;
using C4Net.MVVM.Base;
using C4Net.MVVM.Themes;
using Caliburn.Micro;
using MVVMDemo.Controls;
using MVVMDemo.ViewModels.Flyouts;

namespace MVVMDemo.ViewModels
{
    [Export(typeof(IShell))]
    public class ShellViewModel : FlyoutScreen, IShell
    {
        private string firstName = "";

        private string lastName = "";

        //private ObservableCollection<string> iconList = new ObservableCollection<string>();

        private ObservableCollection<Canvas> iconList = new ObservableCollection<Canvas>();

        public string FirstName 
        {
            get{ return this.firstName; }
            set { this.SetProperty<string>(ref this.firstName, value); }
        }

        public string LastName 
        {
            get{ return this.lastName; }
            set { this.SetProperty<string>(ref this.lastName, value); }
        }

        public ObservableCollection<Canvas> IconList
        {
            get { return this.iconList; }
        }

        #region - Methods -

        protected override void OnInitialize()
        {
            IThemeManager themeManager = IoC.Get<IThemeManager>();
            //this.iconList.Add(
            string.Format("hola {0}", "hola");
            base.OnInitialize();
            this.DisplayName = "MVVM Demo";
            this.FirstName = "John";
            this.LastName = "McClane";
            //this.iconList.Add("appbar_add");
            //this.iconList.Add("appbar_alert");
            //this.iconList.Add("appbar_alien");
            //this.iconList.Add("appbar_align_center");
            //this.iconList.Add("appbar_align_justify");
            //this.iconList.Add("appbar_align_left");
            //this.iconList.Add("appbar_align_right");
            //this.iconList.Add("appbar_anchor");
            //this.iconList.Add("appbar_arrow_collapsed");
            //this.iconList.Add("appbar_arrow_down_up");
            //this.iconList.Add("appbar_arrow_down");
            //this.iconList.Add("appbar_arrow_expand");
            //this.iconList.Add("appbar_arrow_left_right");
            //this.iconList.Add("appbar_arrow_left");
            //this.iconList.Add("appbar_arrow_right_left");
            //this.iconList.Add("appbar_arrow_right");
            //this.iconList.Add("appbar_arrow_up_down");
            //this.iconList.Add("appbar_arrow_up");
            //this.iconList.Add("appbar_axis_three");
            //this.iconList.Add("appbar_barcode");
            //this.iconList.Add("appbar_base");
            //this.iconList.Add("appbar_bath");
            //this.iconList.Add("appbar_battery_0");
            //this.iconList.Add("appbar_battery_1");
            //this.iconList.Add("appbar_battery_2");
            //this.iconList.Add("appbar_battery_3");
            //this.iconList.Add("appbar_bed");
            //this.iconList.Add("appbar_bing");
            //this.iconList.Add("appbar_bluetooth");
            //this.iconList.Add("appbar_book_side");
            //this.iconList.Add("appbar_book");
            //this.iconList.Add("appbar_box_unfolded");
            //this.iconList.Add("appbar_box");
            //this.iconList.Add("appbar_bus");
            //this.iconList.Add("appbar_calculator");
            //this.iconList.Add("appbar_calendar_14");
            //this.iconList.Add("appbar_calendar_31");
            //this.iconList.Add("appbar_calendar");
            //this.iconList.Add("appbar_camera_flash_auto_selected");
            //this.iconList.Add("appbar_camera_flash_auto");
            //this.iconList.Add("appbar_camera_flash_off_selected");
            //this.iconList.Add("appbar_camera_flash_off");
            //this.iconList.Add("appbar_camera_flash_selected");
            //this.iconList.Add("appbar_camera_flash");
            //this.iconList.Add("appbar_camera");
            //this.iconList.Add("appbar_cancel");
            //this.iconList.Add("appbar_candy_cane");
            //this.iconList.Add("appbar_cards_club");
            //this.iconList.Add("appbar_cards_diamond");
            //this.iconList.Add("appbar_cards_heart");
            //this.iconList.Add("appbar_cards_spade");
            //this.iconList.Add("appbar_cart");
            //this.iconList.Add("appbar_cd_eject");
            //this.iconList.Add("appbar_cd");
            //this.iconList.Add("appbar_chat");
            //this.iconList.Add("appbar_check");
            //this.iconList.Add("appbar_chess_bishop");
            //this.iconList.Add("appbar_chess_horse");
            //this.iconList.Add("appbar_chess_king");
            //this.iconList.Add("appbar_chess_pawn");
            //this.iconList.Add("appbar_chess_queen");
            //this.iconList.Add("appbar_chess_rook");
            //this.iconList.Add("appbar_chevron_down");
            //this.iconList.Add("appbar_chevron_left");
            //this.iconList.Add("appbar_chevron_right");
            //this.iconList.Add("appbar_chevron_up");
            //appbar_city
            //appbar_clean
            //appbar_clear_inverse_reflect_horizontal
            //appbar_clear_inverse
            //appbar_clear_reflect_horizontal
            //appbar_clear
            //appbar_clipboard_edit
            //appbar_clipboard_file
            //appbar_clipboard
            //appbar_clock
            //appbar_close
            //appbar_cloud_add
            //appbar_cloud_delete
            //appbar_cloud_download
            //appbar_cloud_upload
            //appbar_cloud
            //appbar_column_one
            //appbar_column_three
            //appbar_column_two
            //appbar_cone_diagonal
            //appbar_cone
            //appbar_connect
            //appbar_connection_1x
            //appbar_connection_3g
            //appbar_connection_4g
            //appbar_connection_ev
            //appbar_connection_wifi
            //appbar_console
            //appbar_contrast
            //appbar_fastforward
            //appbar_pause
            //appbar_play
            //appbar_controller_snes
            //appbar_controller_xbox
            //appbar_copyright
            //appbar_creativecommons
            //appbar_creditcard
            //appbar_crop
            //appbar_crosshair
            //appbar_crown
            //appbar_cup_empty
            //appbar_cup_full
            //appbar_cup_half
            //appbar_cup_paper
            //appbar_cup
            //appbar_cupcake
            //appbar_currency_cent
            //appbar_currency_dollar
            //appbar_currency_euro
            //appbar_currency_pound
            //appbar_currency_rupee
            //appbar_currency_yen
            //appbar_cusor_pointer
            //appbar_database
            //appbar_deeplink_round
            //appbar_deeplink
            //appbar_delete
            //appbar_diagram
            //appbar_dial
            //appbar_disconnect
            //appbar_disk_download
            //appbar_disk
            //appbar_door_enter
            //appbar_door_leave
            //appbar_download
            //appbar_dropbox
            //appbar_dropper
            //appbar_edit
            //appbar_email_hardedge
            //appbar_email
            //appbar_equalizer
            //appbar_error
            //appbar_exclamation
            //appbar_eye
            //appbar_facebook_connect
            //appbar_facebook_disconnect
            //appbar_facebook_heart
            //appbar_facebook_heartbreak
            //appbar_facebook
            //appbar_female
            //appbar_film
            //appbar_filter_alphabetical
            //appbar_filter
            //appbar_flag_bear
            //appbar_flag_wavy
            //appbar_flag
            //appbar_folder_ellipsis
            //appbar_folder_open
            //appbar_folder
            //appbar_food
            //appbar_forklift_load
            //appbar_forklift
            //appbar_forrst
            //appbar_gift
            //appbar_google
            //appbar_googleplus
            //appbar_grade_a_minus
            //appbar_grade_a_plus
            //appbar_grade_a
            //appbar_grade_b_minus
            //appbar_grade_b_plus
            //appbar_grade_b
            //appbar_grade_c_minus
            //appbar_grade_c_plus
            //appbar_grade_c
            //appbar_grade_d_minus
            //appbar_grade_d_plus
            //appbar_grade_d
            //appbar_grade_e
            //appbar_grade_f
            //appbar_graph_bar
            //appbar_graph_boxplot
            //appbar_graph_line_down
            //appbar_graph_line_up
            //appbar_graph_line
            //appbar_heart_outline
            //appbar_heart
            //appbar_heartbreak
            //appbar_home
            //appbar_hourglass
            //appbar_ie
            //appbar_image_focus
            //appbar_image_hdr
            //appbar_image_multiple
            //appbar_image_redeye
            //appbar_image
            //appbar_inbox_in
            //appbar_inbox_out
            //appbar_inbox
            //appbar_infinite
            //appbar_information_circle
            //appbar_information
            //appbar_interface_button
            //appbar_interface_dropdown
            //appbar_interface_list
            //appbar_interface_password
            //appbar_iphone
            //appbar_journal
            //appbar_key_old
            //appbar_key
            //appbar_laptop
            //appbar_layer_add
            //appbar_layer_delete
            //appbar_layer_minus
            //appbar_layer
            //appbar_layout
            //appbar_leaderboard
            //appbar_lifesaver
            //appbar_lightning
            //appbar_lines_horizontal_4
            //appbar_link
            //appbar_list
            //appbar_list_two
            //appbar_list1
            //appbar_location_add
            //appbar_location_delete
            //appbar_location_foursquare
            //appbar_location_minus
            //appbar_location
            //appbar_location1
            //appbar_lock
            //appbar_loop
            //appbar_magnify_add
            //appbar_magnify_minus
            //appbar_magnify
            //appbar_male
            //appbar_man_suitcase_fast
            //appbar_man_suitcase_run
            //appbar_man_suitcase
            //appbar_map
            //appbar_marketplace
            //appbar_martini
            //appbar_message_send
            //appbar_message
            //appbar_microphone
            //appbar_microsoft_tag
            //appbar_minus
            //appbar_money
            //appbar_monitor
            //appbar_movie_clapper_solid
            //appbar_movie_clapper
            //appbar_music
            //appbar_navigate_next
            //appbar_navigate_previous
            //appbar_network
            //appbar_new_window
            //appbar_new
            //appbar_noentry
            //appbar_notification_multiple
            //appbar_notification
            //appbar_nyan
            //appbar_os_android
            //appbar_os_blackberry
            //appbar_os_chromium
            //appbar_os_ios
            //appbar_os_ubuntu
            //appbar_os_windows_8
            //appbar_windows
            //appbar_os_windowsphone
            //appbar_os_windowsphone_new
            //appbar_page_number
            //appbar_page_number1
            //appbar_page_number2
            //appbar_page_number3
            //appbar_page_number4
            //appbar_page_number5
            //appbar_page_number6
            //appbar_page_number7
            //appbar_page_number8
            //appbar_page_add
            //appbar_page_arrow
            //appbar_page_check
            //appbar_page_code
            //appbar_page_delete
            //appbar_page_edit
            //appbar_page_excel
            //appbar_page_gif
            //appbar_page_heart
            //appbar_page_heartbreak
            //appbar_page_hidden
            //appbar_page_jpg
            //appbar_page_minus
            //appbar_page_multiple
            //appbar_page_music
            //appbar_page_new
            //appbar_page_onenote
            //appbar_page_png
            //appbar_page_powerpoint
            //appbar_page_question
            //appbar_page_search
            //appbar_page_word
            //appbar_page
            //appbar_page_xml
            //appbar_palmtree
            //appbar_paper
            //appbar_paperclip_rotated
            //appbar_paperclip
            //appbar_paypal
            //appbar_people_status
            //appbar_people
            //appbar_phone
            //appbar_pie_quarter
            //appbar_pie
            //appbar_pin_rotated_270
            //appbar_pin_rotated_315
            //appbar_pin
            //appbar_places
            //appbar_plane_rotated_135
            //appbar_plane_rotated_45
            //appbar_plane
            //appbar_pokeball
            //appbar_power
            //appbar_projector_screen
            //appbar_projector
            //appbar_protractor
            //appbar_puzzle_round
            //appbar_puzzle
            //appbar_qr
            //appbar_question
            //appbar_radar_screen
            //appbar_radar
            //appbar_radioactive
            //appbar_redo
            //appbar_refresh
            //appbar_repeat
            //appbar_reply_calendar
            //appbar_reply_email
            //appbar_reply_people
            //appbar_reset
            //appbar_rewind
            //appbar_ribbon_wave
            //appbar_ribbon
            //appbar_rss
            //appbar_save
            //appbar_scale_unbalanced
            //appbar_scale
            //appbar_scrabble
            //appbar_scrabble1
            //appbar_scrabble2
            //appbar_scrabble3
            //appbar_scrabble4
            //appbar_scrabble5
            //appbar_scrabble6
            //appbar_scrabble7
            //appbar_scrabble8
            //appbar_scrabble9
            //appbar_scrabble10
            //appbar_scrabble11
            //appbar_scrabble12
            //appbar_scrabble13
            //appbar_scrabble14
            //appbar_scrabble15
            //appbar_scrabble16
            //appbar_scrabble17
            //appbar_scrabble18
            //appbar_scrabble19
            //appbar_scrabble20
            //appbar_scrabble21
            //appbar_scrabble22
            //appbar_scrabble23
            //appbar_scrabble24
            //appbar_scrabble25
            //appbar_settings
            //appbar_share
            //appbar_shotglass
            //appbar_shuffle
            //appbar_sidebar_expand_left
            //appbar_sidebar_expand_right
            //appbar_sign_caution
            //appbar_sign_interstate_75
            //appbar_sign_interstate_94
            //appbar_sign_interstate_95
            //appbar_sign_interstate
            //appbar_sign_stop
            //appbar_skype
            //appbar_sleep
            //appbar_slice
            //appbar_smiley_angry
            //appbar_smiley_cry
            //appbar_smiley_frown
            //appbar_smiley_glasses
            //appbar_smiley_grin
            //appbar_smiley_grumpy
            //appbar_smiley_happy
            //appbar_smiley_kiki
            //appbar_smiley_squint
            //appbar_smiley_tounge
            //appbar_smiley_what
            //appbar_snowflake
            //appbar_sort_alphabetical_ascending
            //appbar_sort_alphabetical_descending
            //appbar_sort_numeric_ascending
            //appbar_sort_numeric_descending
            //appbar_sound_0
            //appbar_sound_1
            //appbar_sound_2
            //appbar_sound_3
            //appbar_sound_mute
            //appbar_speakerphone
            //appbar_star_add
            //appbar_star_delete
            //appbar_star_invincible
            //appbar_star_minus
            //appbar_star
            //appbar_steam
            //appbar_stock_down
            //appbar_stock_up
            //appbar_stock
            //appbar_stocking
            //appbar_stop
            //appbar_suitcase
            //appbar_tag_label
            //appbar_tag
            //tardis
            //appbar_thumbs_down
            //appbar_thumbs_up
            //appbar_tiles_four
            //appbar_tiles_nine
            //appbar_tiles_sixteen
            //appbar_timer_1
            //appbar_timer_2
            //appbar_timer_3
            //appbar_timer_4
            //appbar_timer_5
            //appbar_timer_alert
            //appbar_timer_check
            //appbar_timer_forward
            //appbar_timer_pause
            //appbar_timer_play
            //appbar_timer_record
            //appbar_timer_rewind
            //appbar_timer_stop
            //appbar_timer
            //appbar_tower
            //appbar_train
            //appbar_transform_flip_horizontal
            //appbar_transform_flip_vertical
            //appbar_transform_rotate_left
            //appbar_transform_rotate_right
            //appbar_transit_arrive
            //appbar_transit_connection_departure
            //appbar_transit_connection
            //appbar_transit_depart
            //appbar_transit_distance_from
            //appbar_transit_distance_to
            //appbar_tree_pine
            //appbar_trophy
            //appbar_truck
            //appbar_tux
            //appbar_tv
            //appbar_twitter_bird
            //appbar_twitter
            //appbar_undo
            //appbar_unlock_keyhole
            //appbar_unlock
            //appbar_unpin_rotated_270
            //appbar_unpin_rotated_315
            //appbar_unpin
            //appbar_upload
            //appbar_user_add
            //appbar_user_delete
            //appbar_user_minus
            //appbar_user_tie
            //appbar_user
            //appbar_vector_circle
            //appbar_vector_line
            //appbar_vector_pen_add
            //appbar_vector_pen_convert
            //appbar_vector_pen_minus
            //appbar_vector_pen
            //appbar_vector_polygon
            //appbar_vector_rectangle
            //appbar_video_highdefinition
            //appbar_video_standarddefinition
            //appbar_camera_film
            //appbar_warning_circle
            //appbar_warning
            //appbar_weather_chance
            //appbar_weather_overcast
            //appbar_weather_rain
            //appbar_weather_snow
            //appbar_weather_station
            //appbar_weather_sun
            //appbar_weather_symbol
            //appbar_weather_thunder
            //appbar_windowsphone
            //appbar_xbox


        }

        public void DoClose()
        {
            this.TryClose();
        }

        #endregion

        protected override void InitializeFlyouts()
        {
            this.AddFlyout(new FlyoutLeftViewModel());
            this.AddFlyout(new FlyoutRightViewModel());
            this.AddFlyout(new FlyoutTopViewModel());
            this.AddFlyout(new FlyoutBottomViewModel());
        }
    }
}
